使用正則表達式處理字符串 (String Manipulation with regular expression)


問題描述

使用正則表達式處理字符串 (String Manipulation with regular expression)

I have seen in this forum, that many of the people are doing string manipulation using Regular expression. Is there any performance benefit on regex rather than the normal indexing manipulation?

It would be helpful, if you explain it how or provide any link explaining it.

‑‑‑‑‑

參考解法

方法 1:

It's not so much a performance thing; people use regular expressions because they are an easy‑to‑use yet ultra‑flexible tool for all sorts of string manipulations. Once you master the syntax, regular expressions allow you to express quite complex string manipulations, and since a regular expression itself is basically a string, you can store regular expressions in variables, files, databases, and a bunch of other things.

Consider this simple regex: /\bA[a‑z]*\b/, which finds all whole words that start with a capital 'A', followed by only lowercase letters (e.g., running it over "And Now All Is Good" would yield ["And", "All"]). Now write a function that does the same (in the language of your choice) using only standard string manipulations. You'll quickly see the advantages of regular expressions.

方法 2:

A good amount of discussion is available on this SO question, String manipulation vs Regexps

(by NaveenBhattdammersAziz Shaikh)

參考文件

  1. String Manipulation with regular expression (CC BY‑SA 3.0/4.0)

#string #RegEx #.net #C#






相關問題

VB.net 如何讓流閱讀器忽略某些行? (VB.net how to make stream reader ignore some line?)

Perl Text::CSV_XS 從字符串中讀取 (Perl Text::CSV_XS read from string)

在 D3 中用逗號格式化數字 (Formatting numbers with commas in D3)

我應該使用什麼-String 或 StringBuilder 將 SQL 查詢存儲在使用許多不同 SQL 查詢的代碼中 (what should i use-String or StringBuilder for storing SQL queries in a code which uses many different SQL queries)

在 python 3.5 的輸入列表中添加美元符號、逗號和大括號 (Adding dollar signs, commas and curly brackets to input list in python 3.5)

使用正則表達式處理字符串 (String Manipulation with regular expression)

如何區分數字字符串和字符串? (How do i distinguish between number string and character string?)

如何將單詞的結尾與 Ruby 中的哈希進行比較? (How can I compare the ending of a word with a hash in Ruby?)

在 Python 列表中查找位於特定字符串之間的字符串 (Find Strings Located Between Specific Strings in List Python)

大寫替代字母 (Alternate letters in upper case)

查找 ia strn 列在同一數據框中的列表列中,並創建具有值的第三列 (Find ia a strn column is in a list column in the same data frame and create a 3rd column with a value)

在算術表達式中使用字符串是否安全? (Is it safe to use strings in arithmetic expressions?)







留言討論